package com.szjz.elasticsearch.biz.entity;

import com.szjz.elasticsearch.eshelper.animation.ESField;
import com.szjz.elasticsearch.eshelper.animation.ESFieldIgnore;
import com.szjz.elasticsearch.eshelper.animation.ESTable;
import com.szjz.elasticsearch.eshelper.base.BaseESEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * @author 史博
 * @desc 【智能饲料供料系统】单元内各圈实际打料信息返回
 * @since 2020-05-13
 */
@Data
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
@ToString
@ESTable(indexName = "my_yy_sty_return", shardNum = 7)
public class ESYyStyReturn extends BaseESEntity {


    private static final long serialVersionUID = 1L;

    /**
     * 区域编码
     */
    @ApiModelProperty(value = "区域编码")
    private String areaId;

    /**
     * 区域名称
     */
    @ApiModelProperty(value = "区域名称")
    private String areaName;

    /**
     * 场次编码
     */
    @ApiModelProperty(value = "场次编码")
    private String fieldId;

    /**
     * 场次名称
     */
    @ApiModelProperty(value = "场次名称")
    private String fieldName;

    /**
     * 工段编码
     */
    @ESFieldIgnore
    @ApiModelProperty(value = "工段编码")
    private String segmentId;

    /**
     * 工段名称
     */
    @ApiModelProperty(value = "工段名称")
    private String segmentName;

    /**
     * 批次号
     */
    @ApiModelProperty(value = "批次号")
    private String fbatchId;

    /**
     * 批次名称
     */
    @ApiModelProperty(value = "批次名称")
    private String fbatch;

    /**
     * 单元编码
     */
    @ApiModelProperty(value = "单元编码")
    private String unitId;

    /**
     * 单元
     */
    @ApiModelProperty(value = "单元")
    private String unit;

    /**
     * 当前猪群日龄或怀孕孕龄或者泌乳母猪的仔猪日龄
     */
    @ApiModelProperty(value = "当前猪群日龄或怀孕孕龄或者泌乳母猪的仔猪日龄")
    private String age;

    /**
     * 料桶ID
     */
    @ApiModelProperty(value = "料桶ID")
    @ESField(docValues = true)
    private Date date;
//    private String bucketId;

    /**
     * 料筒编号、栏位
     */
    @ApiModelProperty(value = "料筒编号")
    private Integer bucketNo;

    /**
     * 当为母猪时存在耳号
     */
    @ApiModelProperty(value = "当为母猪时存在耳号")
    private String earNumber;

    /**
     * 猪圈ID
     */
    @ApiModelProperty(value = "猪圈ID")
    private String styId;

    /**
     * 猪圈号
     */
    @ApiModelProperty(value = "猪圈号")
    private Integer styNo;

    /**
     * 猪圈功能码
     */
    @ApiModelProperty(value = "猪圈功能码")
    private Integer styFunctionCode;

    /**
     * 站号
     */
    @ApiModelProperty(value = "站号")
    private String stationNum;

    /**
     * 需求量(kg)
     */
    @ApiModelProperty(value = "需求量(kg)")
    private String requirement;

    /**
     * 实际发送量(kg)
     */
    @ApiModelProperty(value = "实际发送量(kg)")
    private Double actualSend;

    /**
     * 状态【-1】删除    【0】初始化    【1】正常   【2】已审核
     */
    @ApiModelProperty(value = "状态【-1】删除    【0】初始化    【1】正常   【2】已审核")
    private Integer status;


    /**
     * 数据传输系统定义的数据类型，可以存表名
     */
    @ApiModelProperty(value = "数据传输系统定义的数据类型，可以存表名")
    private String dataType;

    /**
     * 场区标识
     */
    @ApiModelProperty(value = "场区标识")
    private String pigFormId;

    /**
     * 数据状态 0待传输 1已传输
     */
    @ApiModelProperty(value = "数据状态 0待传输 1已传输")
    private Integer exchangeStatus;

    /**
     * 饲料需求日期
     */
    @ApiModelProperty(value = "饲料需求日期")
    private Date requirementTime;

    /**
     * 配量器器类型【1】刻度  【2】闭风器
     */
    @ApiModelProperty(value = "配量器器类型【1】刻度  【2】闭风器")
    private String attr1;

    /**
     * 具体刻度/秒数值
     */
    @ApiModelProperty(value = "具体刻度/秒数值")
    private String attr2;

    /**
     * 【0】颗粒【1】粉料
     */
    @ApiModelProperty(value = "【0】颗粒【1】粉料")
    private String attr3;

    /**
     * 错误码
     */
    @ApiModelProperty(value = "错误码")
    private String attr4;

    /**
     * 记录时间是否正常【1】正常 【2】异常
     */
    @ApiModelProperty(value = "记录时间是否正常【1】正常 【2】异常")
    private String attr5;

    /** attr6  */
    /**
     * 记录类型【0】下料记录 【1】下水记录【2】触碰记录【3】控制板重启记录【4】通讯板重启【5】PLC拉料记录【6】单片机拉料记录 【7】错误记录
     */
    @ApiModelProperty(value = "记录类型【0】下料记录 【1】下水记录【2】触碰记录【3】控制板重启记录【4】通讯板重启【5】PLC拉料记录【6】单片机拉料记录 【7】错误记录")
    private String attr6;

    /**
     * PLC-ID
     */
    @ApiModelProperty(value = "PLC-ID")
    private String attr7;

    /**
     * 记录存储地址
     */
    @ApiModelProperty(value = "记录存储地址")
    private String attr8;

    /**
     * 备用字段9 每圈头数 存栏
     */
    @ApiModelProperty(value = "备用字段9")
    private String attr9;

    /**
     * 备用字段10 均重
     */
    @ApiModelProperty(value = "备用字段10")
    private String attr10;

    /**
     * 备用字段11
     */
    @ApiModelProperty(value = "备用字段11")
    private String attr11;

    /**
     * 备用字段12
     */
    @ApiModelProperty(value = "备用字段12")
    private String attr12;

    /**
     * 备用字段13
     */
    @ApiModelProperty(value = "备用字段13")
    private String attr13;

    /**
     * 备用字段14
     */
    @ApiModelProperty(value = "备用字段14")
    private String attr14;

    /**
     * 备用字段15
     */
    @ApiModelProperty(value = "备用字段15")
    @ESField(type = "text")
    private String attr15;


}
